Camerilla PivotsBefore starting special thanks to @QuantNomad for his script "Ultimate Pivot Point Alerts"
Link : -
Please follow and support him for his work.
In this script I'm modifying how time frame factor is imported into the script and removing other types of Pivots and cleaning it further for only CAMs, I've also added the formulas for 5 and 6 numbers, it will help in trading breakout strategies.
Note that this way of importing Time frame produces minor difference in readings/levels from how it is done in QuantNomads script, so before taking your pics you should calculate your levels on separate sheet and compare which ones are working for you and your strategy.
I've been using this CAM setup for almost a year now, so I coded it as per my needs, it is up to users to utilize it to theirs.
Further utility:
1. You can hide/unhide S/R levels 5/6
2. This is MultiTimeframe version, meaning you can change Time-frame of Pivots being displayed on any TF chart.
3. Lines are produced for only level 3 and 4. And you can choose to hide them. Only Pivot line is kept and can not be hidden.
4. You can also choose to hide/unhide level value and only see label if you want.
5. No historical levels are kept to avoid clutter.
I've not included alerts as I don't use them, but if anyone wants it I suggest referring to @QuantNomad script bank. He has published number of excellent scripts in this regard.
There is no restrictions on this script, it can be used and reproduced freely. Its my way of doing little something for community and my first script.
Enjoy.
In den Scripts nach "THE SCRIPT" suchen
VWAP forex Yesterday Hi/Low update fix This script is an updte fix of an earlier script that stopped functioning when TradingView updated Pine script. This script plots Forex (24 hour session) VWAP, yesterday's high, low, open and close (HLOC),
the day before's HLOC -
Also plots higher timeframe 20 emas
1 minute 5, 15, 60 period 20 ema
5 minute 15, 60 period 20 ema
15 minute 60, 120 , 240 period 20 ema
60 minute 120, 240 period 20 ema
120 minute 240, D period 20 ema
240 minute D period 20 ema
Also signals inside bars (high is less than or equal to the previous bar's high and the low is greater than or equal to the previous low) the : true inside bars have a maroon triangle below the bar as well as a ">" above the bar.
If subsequest bars are inside the last bar before the last true inside bar they also are marked with an ">"
This is probably a slight variation from the way Leaf_West plots the inside bars.
It appears that he marks all bars that are inside the original bar until one a bar has a high or low
outside the original bar. But I would need to see an example on his charts.
The Time Session Glitch and the Fix FX_IDC, COINBASE and BITSTAMP:
The script will correctly default to 1700 hrs to 1700hrs EDT/EST session for FXCM.
Strangely some securities appear to erroneously start their session at 1200 hrs ie. My guess is that they are somehow tied to GMT+0 instead of New York time (GMT+5). See this for yourself by selecting EURUSD using the FXCM exchange (FX:EURUSD) and then EURUSD from the IDC exchange (FX_IDC:EURUSD). The FX-IDC session opening range starts 5 hours before it actually should at 1700 hrs EDT/EST. To correct for this I have implemented an automatic fix (default) and a user selected "5 hour time shift adjust. ment needed on some securities".
There is also a 4 hour time shift button which might be necessary when New York reverts from Eastern Standard Time to Eastern Daylight Time (1 hour difference) in March (and then back again in November). In the default auto adjust mode you will need to select the 1 hour time shift. That is if this glitch still exists at that time.
I have looked at other scripts, other than my own and where the script is available, that need to use information about the opening bar and all have the same time shift issue
COINBASE and BITSTAMP open at 0000 hours GMT. Since I use lines instead of circles or crosses I had to make a small adjustment to plot the lines correctly.
If it needs work let me know.
Jayy
Pure Price Action Liquidity Sweeps [LuxAlgo]The Pure Price Action Liquidity Sweeps indicator is a pure price action adaptation of our previously published and highly popular Liquidity-Sweeps script.
Similar to its earlier version, this indicator detects the presence of liquidity sweeps on the user's chart, while also identifying potential areas of support/resistance or entry when liquidity levels are taken. The key difference, however, is that this price action version relies solely on price patterns, eliminating the need for numerical swing length settings.
🔶 USAGE
A Liquidity Sweep occurs when the price breaks through a liquidity level , after which the price returns below/above the liquidity level , forming a wick.
The examples below show a bullish and bearish scenario of "a wick passing through a liquidity level where the price quickly comes back".
Short-term liquidity sweep detection is based on short-term swing levels. Some of these short-term levels, depending on further market developments, may evolve into intermediate-term levels and, in the long run, become long-term levels. Therefore, enabling short-term detection with the script means showing all levels, including minor and temporal ones. Depending on the trader's style, some of these levels may be considered noise. Enabling intermediate and long-term levels can help filter out this noise and provide more significant levels for trading decisions. For further details on how swing levels are identified please refer to the details section.
The Intermediate-term option selection for the same chart as above, filters out minor or noisy levels, providing clearer and more significant levels for traders to observe.
🔶 DETAILS
The swing points detection feature relies exclusively on price action, eliminating the need for numerical user-defined settings.
The first step involves detecting short-term swing points, where a short-term swing high (STH) is identified as a price peak surrounded by lower highs on both sides. Similarly, a short-term swing low is recognized as a price trough surrounded by higher lows on both sides.
Intermediate-term swing and long-term swing points are detected using the same approach but with a slight modification. Instead of directly analyzing price candles, we now utilize the previously detected short-term swing points. For intermediate-term swing points, we rely on short-term swing points, while for long-term swing points, we use the intermediate-term ones.
🔶 SETTINGS
Detection: Period options of the detected swing points.
🔶 RELATED SCRIPTS
Pure-Price-Action-Structures.
Liquidity-Sweeps.
[EVI]EMA with Volume LevelsThe " EMA with Volume Levels" script calculates the Exponential Moving Average (EMA) of the closing prices over a specified period and dynamically changes the color of the EMA based on volume levels. This indicator helps traders easily identify the current volume conditions. As the volume increases or decreases, the color of the EMA changes, providing a visual cue that can assist in making better trading decisions.
Features
This script offers the following features:
EMA Calculation: Calculates the Exponential Moving Average of the closing prices over the user-defined period (default is 360).
Volume Threshold Calculation: Computes the Simple Moving Average (SMA) and standard deviation of the volume over the user-defined period (default is 500), classifying the volume levels into extreme, high, medium, and low.
Dynamic EMA Color: Changes the color of the EMA dynamically based on volume levels, displaying it visually on the chart.
Chart Interpretation
EMA Color and Volume:
If the EMA line is red, it indicates very high volume.
If the EMA line is green, it indicates high volume.
If the EMA line is light green, it indicates medium volume.
If the EMA line is gray, it indicates low volume.
If the EMA line is dark gray, it indicates very low volume.
Cross Analysis:
When the EMA line and the candles are about to cross, and the volume is high (causing the EMA line to turn red), the candles are more likely to break through the 360-day EMA line.
Conversely, if the volume is low and the EMA line turns dark, the EMA line will likely act as a resistance or support level, increasing the likelihood of a bounce.
Additional Indicator:
Using the 20-day moving average along with this script can be beneficial. Combining these two moving averages can provide a more comprehensive view of market volatility.
Notes
Clean Chart: Ensure your chart is clean when using this script. Avoid including other scripts or unnecessary elements.
Additional Explanation: If further explanation is needed on how to use or understand the script, you can use drawings or images on the chart to provide additional context.
Rolling MACDThis indicator displays a Rolling Moving Average Convergence Divergence . Contrary to MACD indicators which use a fix time segment, RMACD calculates using a moving window defined by a time period (not a simple number of bars), so it shows better results.
This indicator is inspired by and use the Close & Inventory Bar Retracement Price Line to create an MACD in different timeframes.
█ CONCEPTS
If you are not already familiar with MACD, so look at Help Center will get you started www.tradingview.com
The typical MACD, short for moving average convergence/divergence, is a trading indicator used in technical analysis of stock prices, created by Gerald Appel in the late 1970s. It is designed to reveal changes in the strength, direction, momentum, and duration of a trend in a stock's price.
The MACD indicator(or "oscillator") is a collection of three time series calculated from historical price data, most often the closing price. These three series are: the MACD series proper, the "signal" or "average" series, and the "divergence" series which is the difference between the two. The MACD series is the difference between a "fast" (short period) exponential moving average (EMA), and a "slow" (longer period) EMA of the price series. The average series is an EMA of the MACD series itself.
Because RMACD uses a moving window, it does not exhibit the jumpiness of MACD plots. You can see the more jagged MACD on the chart above. I think both can be useful to traders; up to you to decide which flavor works for you.
█ HOW TO USE IT
Load the indicator on an active chart (see the Help Center if you don't know how).
Time period
By default, the script uses an auto-stepping mechanism to adjust the time period of its moving window to the chart's timeframe. The following table shows chart timeframes and the corresponding time period used by the script. When the chart's timeframe is less than or equal to the timeframe in the first column, the second column's time period is used to calculate RMACD:
Chart Time
timeframe period
1min 🠆 1H
5min 🠆 4H
1H 🠆 1D
4H 🠆 3D
12H 🠆 1W
1D 🠆 1M
1W 🠆 3M
You can use the script's inputs to specify a fixed time period, which you can express in any combination of days, hours and minutes.
By default, the time period currently used is displayed in the lower-right corner of the chart. The script's inputs allow you to hide the display or change its size and location.
Minimum Window Size
This input field determines the minimum number of values to keep in the moving window, even if these values are outside the prescribed time period. This mitigates situations where a large time gap between two bars would cause the time window to be empty, which can occur in non-24x7 markets where large time gaps may separate contiguous chart bars, namely across holidays or trading sessions. For example, if you were using a 1D time period and there is a two-day gap between two bars, then no chart bars would fit in the moving window after the gap. The default value is 10 bars.
//
This indicator should make trading easier and improve analysis. Nothing is worse than indicators that give confusingly different signals.
I hope you enjoy my new ideas
best regards
Chervolino
[ChasinAlts] SuppRe-me ZonesHello fellow tradeurs, I couldn't find one similar on TV so wanted to make it.. Took me a little while to figure some things out as I am in new coding territory with this script. I had a hard time finding ways to make only a partial zone/box disappear if price only crossed part of it. Nonetheless, I figured it out so I hope you enjoy the outcome. Now, allow me to take a second to first explain the utility that is this script...or at least expose my reasoning when I decided to go ahead with this little project and take the precious time necessary to learn parts of pine that I did not previously know how to deal with. Ultimately, I built this for the 1s-15s TF(except for the "Consecutive Bars/Large Bars" Boxes...Those were meant to use on both these second TFs and Higher TFs.... ). The reasoning behind all of this was to give me a more definitive answer to all of my questions regarding the speed at which it would take price to revisit areas that it very abruptly went to/left on a VERY short TF (like the 1sec charts)...or even if it EVER would). To determine this I wanted to draw lines starting at the end of large wicks, draw boxes spanning the entire span of large wicks, and lastly to draw boxes spanning the entire span of very large bodies. For this last one, not only did I want to draw a box on a single candle that possessed a large body but also if there were consecutive red candles in a row, their bodies could be summed up and if this summation exceeds the minimum body % threshold then it too counts just like a single large candled body would if it was larger than the threshold. All in all I really enjoyed this script and most importantly the data that it produces. What I found after coding the script was that (again on the 1 sec- 15 sec charts) was that price very quickly (relatively speaking I suppose) came back over these box/zoned areas and that the lines drawn from the tip of the large wicks would at some point in the near future act as very good support and resistance for price to either bounce off of or breakout from.
Now, with each of these objects you can choose to delete them when price crosses the object or have them continuously drawn on the chart...your call...but it gets awful messy sometimes if you let them continue printing.
Peace and love people...peace and love,
-ChasinAlts
Relative Volume (rVol), Better Volume, Average Volume ComparisonThis is the best version of relative volume you can find a claim which is based on the logical soundness of its calculation.
I have amalgamated various volume analysis into one synergistic script. I wasn't going to opensource it. But, as one of the lucky few winners of TradingClue 2. I felt obligated to give something back to the community.
Relative volume traditionally compares current volume to prior bar volume or SMA of volume. This has drawbacks. The question of relative volume is "Volume relative to what?" In the traditional scripts you'll find it displays current volume relative to the last number of bars. But, is that the best way to compare volume. On a daily chart, possibly. On a daily chart this can work because your units of time are uniform. Each day represents a full cycle of volume. However, on an intraday chart? Not so much.
Example: If you have a lookback of 9 on an hourly chart in a 24 hour market, you are then comparing the average volume from Midnight - 9 AM to the 9 AM volume. What do you think you'll find? Well at 9:30 when NY exchanges open the volume should be consistently and predictably higher. But though rVol is high relative to the lookback period, its actually just average or maybe even below average compared to prior NY session opens. But prior NY session opens are not included in the lookback and thus ignored.
This problem is the most visibly noticed when looking at the volume on a CME futures chart or some equivalent. In a 24 hour market, such as crypto, there are website's like skew can show you the volume disparity from time of day. This led me to believe that the traditional rVol calculation was insufficient. A better way to calculate it would be to compare the 9:30 am 30m bar today to the last week's worth of 9:30 am 30m bars. Then I could know whether today's volume at 9:30 am today is high or low based on prior 9:30 am bars. This seems to be a superior method on an intraday basis and is clearly superior in markets with irregular volume
This led me to other problems, such as markets that are open for less than 24 hours and holiday hours on traditional market exchanges. How can I know that the script is accurately looking at the correct prior relevant bars. I've created and/or adapted solutions to all those problems and these calculations and code snippets thus have value that extend beyond this rVol script for other pinecoders.
The Script
This rVol script looks back at the bars of the same time period on the viewing timeframe. So, as we said, the last 9:30 bars. Averages those, then divides the: . The result is a percentage expressed as x.xxx. Thus 1.0 mean current volume is equal to average volume. Below 1.0 is below the average and above 1.0 is above the average.
This information can be viewed on its own. But there are more levels of analysis added to it.
Above the bars are signals that correlate to the "Better Volume Indicator" developed by, I believe, the folks at emini-watch and originally adapted to pinescript by LazyBear. The interpretation of these symbols are in a table on the right of the indicator.
The volume bars can also be colored. The color is defined by the relationship between the average of the rVol outputs and the current volume. The "Average rVol" so to speak. The color coding is also defined by a legend in the table on the right.
These can be researched by you to determine how to best interpret these signals. I originally got these ideas and solid details on how to use the analysis from a fellow out there, PlanTheTrade.
I hope you find some value in the code and in the information that the indicator presents. And I'd like to thank the TradingView team for producing the most innovative and user friendly charting package on the market.
(p.s. Better Volume is provides better information with a longer lookback value than the default imo)
Credit for certain code sections and ideas is due to:
LazyBear - Better Volume
Grimmolf (From GitHub) - Logic for Loop rVol
R4Rocket - The idea for my rVol 1 calculation
And I can't find the guy who had the idea for the multiples of volume to the average. Tag him if you know him
Final Note: I'd like to leave a couple of clues of my own for fellow seekers of trading infamy.
Indicators: indicators are like anemometers (The things that measure windspeed). People talk bad about them all the time because they're "lagging." Well, you can't tell what the windspeed is unless the wind is blowing. anemometers are lagging indicators of wind. But forecasters still rely on them. You would use an indicator, which I would define as a instrument of measure, to tell you the windspeed of the markets. Conversely, when people talk positively about indicators they say "This one is great and this one is terrible." This is like a farmer saying "Shovels are great, but rakes are horrible." There are certain tools that have certain functions and every good tool has a purpose for a specific job. So the next time someone shares their opinion with you about indicators. Just smile and nod, realizing one day they'll learn... hopefully before they go broke.
How to forecast: Prediction is accomplished by analyzing the behavior of instruments of measure to aggregate data (using your anemometer). The data is then assembled into a predictive model based on the measurements observed (a trading system). That predictive model is tested against reality for it's veracity (backtesting). If the model is predictive, you can optimize your decision making by creating parameter sets around the prediction that are synergistic with the implications of the prediction (risk, stop loss, target, scaling, pyramiding etc).
<3
PriceCatch Opensource CPRHi Friends & TradingView community.
Greetings to you.
Some traders like to use Central Pivot Range (CPR) in their chart for assessing price movement. It is usually used in combination with Pivot Levels.
Calculating CPR is a simple matter. There a few CPR scripts in the Public Library, but have the code hidden. I thought there may many users who may want to know how CPR is calculated and study it for use in their own scripts. So, here is the CPR script with the code. Use it as you please.
Note: CPR is plotted only on intra-day time-frames.
The light magenta (band) range is current day CPR.
The light blue (band) range is tomorrow's CPR projected for you today itself based on current day's price action and range.
Queries / feedback welcome.
All the best.
PS: The script is developed to the best of my ability and as with all indicators, you have to decide if it might be useful to you when adding to your chart.
Tic Tac Toe (For Fun)Hello All,
I think all of you know the game "Tic Tac Toe" :) This time I tried to make this game, and also I tried to share an example to develop a game script in Pine. Just for fun ;)
Tic Tac Toe Game Rules:
1. The game is played on a grid that's 3 squares by 3 squares.
2. You are "O", the computer is X. Players take turns putting their marks in empty squares.
3. if a player makes 3 of her marks in a row (up, down, across, or diagonally) the he is the winner.
4. When all 9 squares are full, the game is over (draw)
So, how to play the game?
- The player/you can play "O", meaning your mark is "O", so Xs for the script. please note that: The script plays with ONLY X
- There is naming for all squears, A1, A2, A3, B1, B2, B3, C1, C2, C3. you will see all these squares in the options.
- also You can set who will play first => "Human" or "Computer"
if it's your turn to move then you will see "You Move" text, as seen in the following screenshot. for example you want to put "O" to "A1" then using options set A1 as O
How the script play?
it uses MinMax algorithm with constant depth = 4. And yes we don't have option to make recursive functions in Pine at the moment so I made four functions for each depth. this idea can be used in your scripts if you need such an algorithm. if you have no idea about MinMax algorithm you can find a lot of articles on the net :)
The script plays its move automatically if its turn to play. you will just need to set the option that computer played (A1, C3, etc)
if it's computer turn to play then it calculates and show the move it wants to play like "My Move : B3 <= X" then using options you need to set B3 as X
Also it checks if the board is valid or not:
I have tested it but if you see any bug let me know please
Enjoy!
alpha Renko intraday wave timeI was asked to share my experimental Renko intraday wave time. So here it is warts and all. The same for the rest - except the Weis cumulative volume.
Renko wave time is in minutes. This script is strictly intraday and has not been played with extensively.
You must use traditional Renko and set the script wave size to the same size as the Renko brick size.
If you click on the sideways wishbone or "V" in the middle upper part of the chart you will get all of the scripts in this particular sandbox. After clicking the sideways wish bone click on "make it mine". You will then have the whole sandbox. The only published script is the Weis cumulative wave.
The "Boys MAs" is supposed to be a script for daily charts and from within some kind of consolidation. In any case I am intrigued by some signals. You have a variety of sandbox options in the format section of the boys MAs.
These codes are pretty rough with lots of abandoned lines of script.
Systematic Investment Tracker by Ceyhun Gonul### English Description
**Systematic Investment Tracker with Enhanced Features**
This script, titled **Systematic Investment Tracker with Enhanced Features**, is a TradingView tool designed to support systematic investments across different market conditions. It provides traders with two customizable investment strategies — **Continuous Buying** and **Declining Buying** — and includes advanced dynamic investment adjustment features for each.
#### Detailed Explanation of Script Features and Originality
1. **Two Investment Strategies**:
- **Continuous Buying**: This strategy performs purchases consistently at each interval, as set by the user, regardless of market price changes. It follows the principle of dollar-cost averaging, allowing users to build an investment position over time.
- **Declining Buying**: Unlike Continuous Buying, this strategy triggers purchases only when the asset's price has declined from the previous interval's closing price. This approach helps users capitalize on lower price points, potentially improving average costs during downward trends.
2. **Dynamic Investment Adjustment**:
- For both strategies, the script includes a **Dynamic Investment Adjustment** feature. If enabled, this feature increases the purchasing amount by 50% if the current price has fallen by a specific user-defined percentage relative to the previous price. This allows users to accumulate a larger position when the asset is declining, which may benefit long-term cost-averaging strategies.
3. **Customizable Time Frames**:
- Users can specify a **start and end date** for investment, allowing them to restrict or backtest strategies within a specific timeframe. This feature is valuable for evaluating strategy performance over specific market cycles or historical periods.
4. **Graphical Indicators and Labels**:
- The script provides graphical labels on the chart that display purchase points. These indicators help users visualize their investment entries based on the strategy selected.
- A summary **performance label** is also displayed, providing real-time updates on the total amount spent, accumulated quantity, average cost, portfolio value, and profit percentage for each strategy.
5. **Language Support**:
- The script includes English and Turkish language options. Users can toggle between these languages, allowing the summary label text and descriptions to be displayed in their preferred language.
6. **Performance Comparison Table**:
- An optional **Performance Comparison Table** is available, offering a side-by-side analysis of net profit, total investment, and profit percentage for both strategies. This comparison table helps users assess which strategy has yielded better returns, providing clarity on each approach's effectiveness under the chosen parameters.
#### How the Script Works and Its Uniqueness
This closed-source script brings together two established investment strategies in a single, dynamic tool. By integrating continuous and declining purchase strategies with advanced settings for dynamic investment adjustment, the script offers a powerful, flexible tool for both passive and active investors. The design of this script provides unique benefits:
- Enables automated, systematic investment tracking, allowing users to build positions gradually.
- Empowers users to leverage declines through dynamic adjustments to optimize average cost over time.
- Presents an easy-to-read performance label and table, enabling an efficient and transparent performance comparison for informed decision-making.
---
### Türkçe Açıklama
**Gelişmiş Özellikli Sistematik Yatırım Takipçisi**
**Gelişmiş Özellikli Sistematik Yatırım Takipçisi** adlı bu TradingView scripti, çeşitli piyasa koşullarında sistematik yatırım stratejilerini desteklemek üzere tasarlanmış bir araçtır. Script, kullanıcıya iki özelleştirilebilir yatırım stratejisi — **Sürekli Alım** ve **Düşen Alım** — ve her strateji için gelişmiş dinamik yatırım ayarlama seçenekleri sunar.
#### Script Özelliklerinin Detaylı Açıklaması ve Özgünlük
1. **İki Yatırım Stratejisi**:
- **Sürekli Alım**: Bu strateji, fiyat değişimlerine bakılmaksızın kullanıcının belirlediği her aralıkta sabit bir miktar yatırım yapar. Bu yaklaşım, uzun vadede pozisyonu kademeli olarak oluşturmak isteyenler için idealdir.
- **Düşen Alım**: Sürekli Alım’ın aksine, bu strateji yalnızca fiyat bir önceki aralığın kapanış fiyatına göre düştüğünde alım yapar. Bu yöntem, yatırımcıların daha düşük fiyatlardan alım yaparak ortalama maliyeti potansiyel olarak iyileştirmelerine yardımcı olur.
2. **Dinamik Yatırım Ayarlaması**:
- Her iki strateji için de **Dinamik Yatırım Ayarlaması** özelliği bulunmaktadır. Bu özellik aktif edildiğinde, mevcut fiyatın bir önceki fiyata göre kullanıcı tarafından belirlenen bir yüzde oranında düşmesi durumunda alım miktarını %50 artırır. Bu durum, uzun vadede maliyet ortalaması stratejilerine katkıda bulunur.
3. **Özelleştirilebilir Tarih Aralığı**:
- Kullanıcılar, yatırımı belirli bir tarih aralığında sınırlandırmak veya test etmek için bir **başlangıç ve bitiş tarihi** belirleyebilir. Bu özellik, strateji performansını geçmiş piyasa döngüleri veya belirli dönemlerde değerlendirmek için kullanışlıdır.
4. **Grafiksel İşaretleyiciler ve Etiketler**:
- Script, grafik üzerinde alım noktalarını gösteren işaretleyiciler sağlar. Bu görsel göstergeler, kullanıcıların seçilen stratejiye göre yatırım girişlerini görselleştirmesine yardımcı olur.
- Ayrıca, her strateji için harcanan toplam tutar, biriken miktar, ortalama maliyet, portföy değeri ve kâr yüzdesi gibi bilgileri gerçek zamanlı olarak gösteren bir **performans etiketi** sunar.
5. **Dil Desteği**:
- Script, İngilizce ve Türkçe dillerini desteklemektedir. Kullanıcılar, performans etiketi metninin ve açıklamalarının tercih ettikleri dilde görüntülenmesi için dil seçimini yapabilir.
6. **Performans Karşılaştırma Tablosu**:
- İsteğe bağlı olarak kullanılabilen bir **Performans Karşılaştırma Tablosu**, her iki strateji için net kâr, toplam yatırım ve kâr yüzdesi gibi bilgileri yan yana analiz eder. Bu tablo, kullanıcıların hangi stratejinin daha yüksek getiri sağladığını değerlendirmesine yardımcı olur.
#### Scriptin Çalışma Prensibi ve Özgünlüğü
Bu script, iki yatırım stratejisini gelişmiş bir araçta birleştirir. Sürekli ve düşen fiyatlara dayalı alım stratejilerini dinamik yatırım ayarlama özelliğiyle entegre ederek yatırımcılar için güçlü ve esnek bir çözüm sunar. Script’in tasarımı aşağıdaki benzersiz faydaları sağlamaktadır:
- Otomatik, sistematik yatırım takibi yaparak kullanıcıların pozisyonlarını kademeli olarak oluşturmalarına olanak tanır.
- Dinamik ayarlama ile düşüşlerden yararlanarak zaman içinde ortalama maliyeti optimize etme olanağı sağlar.
- Her iki stratejinin performansını basit ve anlaşılır bir şekilde karşılaştıran etiket ve tablo ile verimli bir performans değerlendirmesi sunar.
Swing Assassin's Consolidated ScriptI put this script together to essentially consolidate a number of scripts that I use on a daily basis into one script. This is an ongoing improvement effort, so there may be some garbage in here right now so keep that in mind if you intend to use this to help in your trading.
There are 5 moving averages (Hull). I use the Fast, Mid and Slow to find entries after I us the Medium Slow and Super Slow to identify a trend. Otherwise, I have those three turned off.
This script also uses Bollinger Bands which I literally cannot trade without.
The script also has anchored VWAP , automated support/resistance lines, and a homebrewed Volume Profile that is a copy from Ildar Akhmetgaleev's indicator "Poor Man's Volume Profile" used under Mozilla Public License Version 2.0.
Pinescript - Standard Array Functions Library by RRBStandard Array Functions Library by RagingRocketBull 2021
Version 1.0
This script provides a library of every standard Pinescript array function for live testing with all supported array types.
You can find the full list of supported standard array functions below.
There are several libraries:
- Common String Functions Library
- Common Array Functions Library
- Standard Array Functions Library
Features:
- Supports all standard array functions (30+) with all possible array types* (* - except array.new* functions and label, line array types)
- Live Output for all/selected functions based on User Input. Test any function for possible errors you may encounter before using in script.
- Output filters: show errors, hide all excluded and show only allowed functions using a list of function names
- Console customization options: set custom text size, color, page length, line spacing
Notes:
- uses Pinescript v3 Compatibility Framework
- uses Common String Functions Library
- has to be a separate script to reduce the number of local scopes in Common Array Function Library, there's no way to merge these scripts into a single library.
- lets you live test all standard array functions for errors. If you see an error - change params in UI
- array types that are not supported by certain functions and producing a compilation error were disabled with "error" showing up as result
- if you see "Loop too long" error - hide/unhide or reattach the script
- doesn't use pagination, a single str contains all output
- for most array functions to work (except push), an array must be defined with at least 1 pre-existing dummy element 0.
- array.slice and array.fill require from_index < to_index otherwise error
- array.join only supports string arrays, and delimiter must be a const string, can't be var/input. Use join_any_array to join any array type into string. You can also use tostring() to join int, float arrays.
- array.sort only supports int, float arrays. Use sort_any_array from the Common Array Function Library to sort any array type.
- array.sort only sorts values, doesn't preserve indexes. Use sort_any_array from the Common Array Function Library to sort any array while preserving indexes.
- array.concat appends string arrays in reverse order, other array types are appended correctly
- array.covariance requires 2 int, float arrays of the same size
- tostring(flag) works only for internal bool vars, flag expression can't depend on any inputs of any type, use bool_to_str instead
- you can't create an if/function that returns var type value/array - compiler uses strict types and doesn't allow that
- however you can assign array of any type to another array of any type creating an arr pointer of invalid type that must be reassigned to a matching array type before used in any expression to prevent error
- source_array and create_any_array2 use this loophole to return an int_arr pointer of a var type array
- this works for all array types defined with/without var keyword. This doesn't work for string arrays defined with var keyword for some reason
- you can't do this with var type vars, this can be done only with var type arrays because they are pointers passed by reference, while vars are the actual values passed by value.
- wrapper functions solve the problem of returning var array types. This is the only way of doing it when the top level arr type is undefined.
- you can only pass a var type value/array param to a function if all functions inside support every type - otherwise error
- alternatively values of every type must be passed simultaneously and processed separately by corresponding if branches/functions supporting these particular types returning a common single result type
- get_var_types solves this problem by generating a list of dummy values of every possible type including the source type, allowing a single valid branch to execute without error
- examples of functions supporting all array types: array.size, array.get, array.push. Examples of functions with limited type support: array.sort, array.join, array.max, tostring
- unlike var params/global vars, you can modify array params and global arrays directly from inside functions using standard array functions, but you can't use := (it only works for local arrays)
- inside function always work with array.copy to prevent accidental array modification
- you can't compare arrays
- there's no na equivalent for arrays, na(arr) doesn't work
P.S. A wide array of skills calls for an even wider array of responsibilities
List of functions:
- array.avg(arr)
- array.clear(arr)
- array.concat(arr1, arr2)
- array.copy(arr)
- array.covariance(arr1, arr2)
- array.fill(arr, value, index_from, index_to)
- array.get(arr, index)
- array.includes(arr, value)
- array.indexof(arr, value)
- array.insert(arr, index, value)
- array.join(arr, delimiter)
- array.lastindexof(arr, value)
- array.max(arr)
- array.median(arr)
- array.min(arr)
- array.mode(arr)
- array.pop(arr)
- array.push(arr, value)
- array.range(arr)
- array.remove(arr, index)
- array.reverse(arr)
- array.set(arr, index, value)
- array.shift(arr)
- array.size(arr)
- array.slice(arr, index_from, index_to)
- array.sort(arr, order)
- array.standardize()
- array.stdev(arr)
- array.sum(arr)
- array.unshift(arr, value)
- array.variance(arr)
CSPDMost Advanced & Accurate CandleStick Pattern Detector
Looking All Over of All Markets for All Important Powerful Reversal | Corrective Patterns (25 type)
Filtering the Results with Optional Features like Oscillator, Bollinger Bands, Volume Confirmation, Prior and Following Candles Confirmation which are Fully Customizable.
With this you can detect:
Hammer | Shooting star
Inverted Hammer | Hanging
Long legged Doji | Dragonfly Doji | Gravestone Doji
Bullish tweezers | Bearish tweezers
Bullish inside bar | Bearish inside bar
Bullish three line strike | Bearish three line strike
Bullish engulfing | Bearish engulfing
Piercing line | Dark cloud cover
Bullish abandoned baby | Bearish abandoned baby
Morning star | Evening star
Three white soldiers | Three black crows
*Bullish kayo | *Bearish kayo
Features:
Prior and Following candles Confirmation
You can set prior and following candle as basic prerequisites for marking candles as pattern to make sure you are at the top or bottom of the trend.
Volume confirmation
You can active volume increasing confirmation for some of pattern with adjustable increase % relative to prior candle | candles.
Oscillator Confirmation
Active oscillator confirmation. Select your approved oscillator from list (Stochastic, RSI, StochRSI, MFI, StochMFI) then enter desired value for marking candles as bullish | bearish pattern.
Bollinger Bands Confirmation
Active BB confirmation. Configure your Bollinger Bands. Now only see the patterns which reached or crossed from Bands. Also you can enable BB clod to have your BB indicator at the same time.
Adjustable Flexibility and Precision
You can set tolerance% for Osc and BB Confirmation - each one separately - for more control.
Self-adaptability
The properties of markets change over time, for example the amplitude of fluctuations and the intensity of movements. The script is designed in such a way that you can examine the price history as a benchmark for changes in market properties to adopt determinants. Also you can control those manually.
Self-regulatory
The user has the ability to change input factors depending on their point of view.
Behind the pattern recognition algorithms, there are relationships and similarities in their appearance that cause them to be influenced by each other. Simultaneously with changing the determining factors of each pattern by you, script automatically adjusts other details in accordance with your changes.
Alerts
You can set for type of pattern or each one of pattern have been detected.
Fully Costumizable
All of these options can be change and adjust.
Note 1.
The patterns are based on extensive study of reference and famous sources and the experience of me and my friends in trading and analysis with price action methods.
Note 2.
Due to the Pine limitations in the number of outputs | plots for each script, our attempt has been made to select the best and most important patterns.
Note 3.
So far, many scripts have been written in this field, but our experience with all of them and even the build in version was not satisfactory, and this was the initial motivation for making the script.
We strive to improve progress and elimination of shortcomings and we will continue to make this better.
Note 4.
Through personal experience and based on the principles of market and candlestick psychology, we discovered a new type of pattern and named it as Kayo.
kayo is a two candle pattern which formed when:
1.We have a pivot point with prior candles as left bars and following candles as right bar. Pivot candle called as second candle.
2.In a bullish kayo, first candle must closed descending and second candle must closed as ascending. For bearish kayo vise versa.
3.In a bullish kayo, second candle's lower wick must be longer then upper wick.
4. A pattern marked as kayo when its conditions do not correspond to any of the other patterns(include the confirmation that user added), ie it has the last naming priority over the other patterns.
Note 5.
When you active confirmation options for patterns like hammer, engulf and etc which they conditions are like kayo in some extent, if they can't pass the confirmation steps, they can be marked as kayo pattern.
Note 6.
If you active volume confirmation for Three white soldiers | Three black crows, the confirmation get passed if the volume of forth or third candle increased as value as entered relative to volume EMA3 of 3 candles.
Note 7.
In a bullish pattern all highs of following candles MUST be higher than prior highs and all lows of following candles MUST be higher than prior lows. For bearish patterns vise versa.
This type of confirmation depends on High and Low NOT close!
Gift to price action lovers!
Support us with your like and comments. let us know your experience, points and idea to make this better together.
MIDAS VWAP Jayy his is just a bash together of two MIDAS VWAP scripts particularly AkifTokuz and drshoe.
I added the ability to show more MIDAS curves from the same script.
The algorithm primarily uses the "n" number but the date can be used for the 8th VWAP
I have not converted the script to version 3.
To find bar number go into "Chart Properties" select " "background" then select Indicator Titles and "Indicator values". When you place your cursor over a bar the first number you see adjacent to the script title is the bar number. Put that in the dialogue box midline is MIDAS VWAP . The resistance is a MIDAS VWAP using bar highs. The resistance is MIDAS VWAP using bar lows.
In most case using N will suffice. However, if you are flipping around charts inputting a specific date can be handy. In this way, you can compare the same point in time across multiple instruments eg first trading day of the year or an election date.
Adding dates into the dialogue box is a bit cumbersome so in this version, it is enabled for only one curve. I have called it VWAP and it follows the typical VWAP algorithm. (Does that make a difference? Read below re my opinion on the Difference between MIDAS VWAP and VWAP ).
I have added the ability to start from the bottom or top of the initiating bar.
In theory in a probable uptrend pick a low of a bar for a low pivot and start the MIDAS VWAP there using the support.
For a downtrend use the high pivot bar and select resistance. The way to see is to play with these values.
Difference between MIDAS VWAP and the regular VWAP
MIDAS itself as described by Levine uses a time anchored On-Balance Volume (OBV) plotted on a graph where the horizontal (abscissa) arm of the graph is cumulative volume not time. He called his VWAP curves Support/Resistance VWAP or S/R curves. These S/R curves are often referred to as "MIDAS curves".
These are the main components of the MIDAS chart. A third algorithm called the Top-Bottom Finder was also described. (Separate script).
Additional tools have been described in "MIDAS_Technical_Analysis"
Midas Technical Analysis: A VWAP Approach to Trading and Investing in Today’s Markets by Andrew Coles, David G. Hawkins
Copyright © 2011 by Andrew Coles and David G. Hawkins.
Denoting the different way in which Levine approached the calculation.
The difference between "MIDAS" VWAP and VWAP is, in my opinion, much ado about nothing. The algorithms generate identical curves albeit the MIDAS algorithm launches the curve one bar later than the VWAP algorithm which can be a pain in the neck. All of the algorithms that I looked at on Tradingview step back one bar in time to initiate the MIDAS curve. As such the plotted curves are identical to traditional VWAP assuming the initiation is from the candle/bar midpoint.
How did Levine intend the curves to be drawn?
On a reversal, he suggested the initiation of the Support and Resistance VVWAP (S/R curve) to be started after a reversal.
It is clear in his examples this happens occasionally but in many cases he initiates the so-called MIDAS S/R VWAP right at the reversal point. In any case, the algorithm is problematic if you wish to start a curve on the first bar of an IPO .
You will get nothing. That is a pain. Also in Levine's writings, he describes simply clicking on the point where a
S/R VWAP is to be drawn from. As such, the generally accepted method of initiating the curve at N-1 is a practical and sensible method. The only issue is that you cannot draw the curve from the first bar on any security, as mentioned without resorting to the typical VWAP algorithm. There is another difference. VWAP is launched from the middle of the bar (as per AlphaTrends), You can also launch from the top of the bar or the bottom (or anywhere for that matter). The calculation proceeds using the top or bottom for each new bar.
The potential applications are discussed in the MIDAS Technical Analysis book.
MACD with DPO Strategy by NGExplanation of the MACD with DPO Strategy:
MACD (Moving Average Convergence Divergence):
The MACD is a trend-following indicator that shows the relationship between two moving averages of a price.
In this script:
We calculate the MACD line by subtracting the slow moving average (typically 26-period EMA) from the fast moving average (typically 12-period EMA).
The Signal line is calculated as a 9-period EMA of the MACD line.
The Histogram is the difference between the MACD line and the Signal line, indicating the momentum of the price trend.
Buy Condition: The script generates a buy signal when the MACD histogram crosses from negative to positive (indicating a bullish momentum) and DPO is also positive.
Sell Condition: The script generates a sell signal when the MACD histogram crosses from positive to negative (indicating a bearish momentum) and DPO is also negative.
DPO (Detrended Price Oscillator):
The DPO removes long-term trends from prices, making it easier to identify shorter-term cycles or oscillations.
In this script:
We calculate the DPO by subtracting a shifted simple moving average (SMA) from the close price. The shifting period depends on half the specified period.
We also calculate the DPO SMA as a 30-period EMA of the DPO values.
DPO Color: The DPO line is colored green when the DPO is above zero (indicating upward momentum) and red when it is below zero (indicating downward momentum). The histogram is also colored based on whether the DPO is positive or negative.
Plotting and Alerts:
The script plots the MACD, Signal, and Histogram on the chart.
Additionally, it plots the DPO and its SMA with different colors depending on whether the DPO is above or below zero.
Buy Signal: A green arrow labeled "BUY" is plotted below the bar when both MACD and DPO indicate a bullish condition.
Sell Signal: A red arrow labeled "SELL" is plotted above the bar when both MACD and DPO indicate a bearish condition.
Background colors are used to highlight the chart whenever a buy or sell condition occurs.
The script also includes alerts for both buy and sell signals, allowing users to set notifications when conditions are met.
How to Use:
Identify Buy and Sell Signals:
The script generates a Buy signal when:
The MACD histogram crosses from negative to positive (bullish momentum), and
The DPO is above zero (indicating upward momentum).
The script generates a Sell signal when:
The MACD histogram crosses from positive to negative (bearish momentum), and
The DPO is below zero (indicating downward momentum).
Chart Visualization:
The MACD histogram and Signal line help visualize the momentum and potential trend reversal.
The DPO and DPO SMA help visualize the shorter-term price cycles.
The signals (Buy and Sell) will be plotted on the chart with arrows indicating entry points.
Customization:
You can adjust the MACD and DPO parameters (such as fast_length, slow_length, period_) to fit your trading style or market conditions.
The script can be used in any timeframe depending on your strategy (e.g., intraday trading or longer-term trading).
Example Scenario:
If you're looking for potential buy opportunities, wait for the script to generate a buy signal (green arrow) where the MACD histogram has shifted to positive, and DPO is also in the green (above zero). This signals that both momentum and cycle direction are aligned for a potential upward movement.
Conversely, for sell opportunities, wait for the red arrow where MACD momentum is turning negative and DPO is also negative (below zero), indicating a bearish condition.
This combination of MACD and DPO allows traders to identify stronger and more reliable entry/exit points by confirming the trend with the MACD and detecting shorter-term price cycles with the DPO.
Ticker Tape█ OVERVIEW
This indicator creates a dynamic, scrolling display of multiple securities' latest prices and daily changes, similar to the ticker tapes on financial news channels and the Ticker Tape Widget . It shows realtime market information for a user-specified list of symbols along the bottom of the main chart pane.
█ CONCEPTS
Ticker tape
Traditionally, a ticker tape was a continuous, narrow strip of paper that displayed stock prices, trade volumes, and other financial and security information. Invented by Edward A. Calahan in 1867, ticker tapes were the earliest method for electronically transmitting live stock market data.
A machine known as a "stock ticker" received stock information via telegraph, printing abbreviated company names, transaction prices, and other information in a linear sequence on the paper as new data came in. The term "ticker" in the name comes from the "tick" sound the machine made as it printed stock information. The printed tape provided a running record of trading activity, allowing market participants to stay informed on recent market conditions without needing to be on the exchange floor.
In modern times, electronic displays have replaced physical ticker tapes. However, the term "ticker" remains persistent in today's financial lexicon. Nowadays, ticker symbols and digital tickers appear on financial news networks, trading platforms, and brokerage/exchange websites, offering live updates on market information. Modern electronic displays, thankfully, do not rely on telegraph updates to operate.
█ FEATURES
Requesting a list of securities
The "Symbol list" text box in the indicator's "Settings/Inputs" tab allows users to list up to 40 symbols or ticker Identifiers. The indicator dynamically requests and displays information for each one. To add symbols to the list, enter their names separated by commas . For example: "BITSTAMP:BTCUSD, TSLA, MSFT".
Each item in the comma-separated list must represent a valid symbol or ticker ID. If the list includes an invalid symbol, the script will raise a runtime error.
To specify a broker/exchange for a symbol, include its name as a prefix with a colon in the "EXCHANGE:SYMBOL" format. If a symbol in the list does not specify an exchange prefix, the indicator selects the most commonly used exchange when requesting the data.
Realtime updates
This indicator requests symbol descriptions, current market prices, daily price changes, and daily change percentages for each ticker from the user-specified list of symbols or ticker identifiers. It receives updated information for each security after new realtime ticks on the current chart.
After a new realtime price update, the indicator updates the values shown in the tape display and their colors.
The color of the percentages in the tape depends on the change in price from the previous day . The text is green when the daily change is positive, red when the value is negative, and gray when the value is 0.
The color of each displayed price depends on the change in value from the last recorded update, not the change over a daily period. For example, if a security's price increases in the latest update, the ticker tape shows that price with green text, even if the current price is below the previous day's closing price. This behavior allows users to monitor realtime directional changes in the requested securities.
NOTE: Pine scripts execute on realtime bars when new ticks are available in the chart's data feed. If no new updates are available from the chart's realtime feed, it may cause a delay in the data the indicator receives.
Ticker motion
This indicator's tape display shows a list of security information that incrementally scrolls horizontally from right to left after new chart updates, providing a dynamic visual stream of current market data. The scrolling effect works by using a counter that increments across successive intervals after realtime ticks to control the offset of each listed security. Users can set the initial scroll offset with the "Offset" input in the "Settings/Inputs" tab.
The scrolling rate of the ticker tape display depends on the realtime ticks available from the chart's data feed. Using the indicator on a chart with frequent realtime updates results in smoother scrolling. If no new realtime ticks are available in the chart's feed, the ticker tape does not move. Users can also deactivate the scrolling feature by toggling the "Running" input in the indicator's settings.
█ FOR Pine Script™ CODERS
• This script utilizes dynamic requests to iteratively fetch information from multiple contexts using a single request.security() instance in the code. Previously, `request.*()` functions were not allowed within the local scopes of loops or conditional structures, and most `request.*()` function parameters, excluding `expression`, required arguments of a simple or weaker qualified type. The new `dynamic_requests` parameter in script declaration statements enables more flexibility in how scripts can use `request.*()` calls. When its value is `true`, all `request.*()` functions can accept series arguments for the parameters that define their requested contexts, and `request.*()` functions can execute within local scopes. See the Dynamic requests section of the Pine Script™ User Manual to learn more.
• Scripts can execute up to 40 unique `request.*()` function calls. A `request.*()` call is unique only if the script does not already call the same function with the same arguments. See this section of the User Manual's Limitations page for more information.
• This script converts a comma-separated "string" list of symbols or ticker IDs into an array . It then loops through this array, dynamically requesting data from each symbol's context and storing the results within a collection of custom `Tape` objects . Each `Tape` instance holds information about a symbol, which the script uses to populate the table that displays the ticker tape.
• This script uses the varip keyword to declare variables and `Tape` fields that update across ticks on unconfirmed bars without rolling back. This behavior allows the script to color the tape's text based on the latest price movements and change the locations of the table cells after realtime updates without reverting. See the `varip` section of the User Manual to learn more about using this keyword.
• Typically, when requesting higher-timeframe data with request.security() using barmerge.lookahead_on as the `lookahead` argument, the `expression` argument should use the history-referencing operator to offset the series, preventing lookahead bias on historical bars. However, the request.security() call in this script uses barmerge.lookahead_on without offsetting the `expression` because the script only displays results for the latest historical bar and all realtime bars, where there is no future information to leak into the past. Instead, using this call on those bars ensures each request fetches the most recent data available from each context.
• The request.security() instance in this script includes a `calc_bars_count` argument to specify that each request retrieves only a minimal number of bars from the end of each symbol's historical data feed. The script does not need to request all the historical data for each symbol because it only shows results on the last chart bar that do not depend on the entire time series. In this case, reducing the retrieved bars in each request helps minimize resource usage without impacting the calculated results.
Look first. Then leap.
Risk Management Calculator with Fees and Take Profit [CHE]Risk Management Calculator with Fees and Take Profit
Welcome to the Risk Management Calculator with Fees and Take Profit script! This powerful tool is designed to help traders manage their risk effectively, calculate leverage, and set take profit targets. The script is inspired by and builds upon the ideas from the following TradingView script: ().
This script is inspired by and builds upon the ideas from the following TradingView script:
Features
1. Portfolio Size Input: Enter the size of your portfolio to accurately calculate your risk and leverage.
2. Max Loss Percent Input: Specify the maximum percentage of your portfolio that you are willing to risk on a single trade.
3. Max Leverage Input: Set the maximum leverage you are comfortable using.
4. Trading Fee Input: Include trading fees in your calculations to get a more realistic view of your potential losses and gains.
5. ATR Settings: Configure the ATR period and multiplier to calculate your stop loss and take profit levels.
6. RSI Settings: Adjust the RSI period for trend analysis.
How to Use
Portfolio Size
- Description: This is the total value of your trading account.
- Input: `portfolioSize`
- Default Value: 100
- Minimum Value: 0.001
Max Loss Percent
- Description: The maximum percentage of your portfolio you are willing to lose on a single trade.
- Input: `maxLossPercent`
- Default Value: 3%
- Range: 0.1% to 100%
Max Leverage
- Description: The maximum leverage you wish to use.
- Input: `maxLeverage`
- Default Value: 125
- Range: 1 to 125
Trading Fee
- Description: The fee percentage you pay per trade.
- Input: `feeRate`
- Default Value: 1%
- Range: 0% to 10%
ATR Settings
- ATR Period: Number of bars used to calculate the Average True Range.
- Input: `atrPeriod`
- Default Value: 5
- ATR Multiplier: Multiplier for ATR to set stop loss levels.
- Input: `atrMultiplier`
- Default Value: 2.0
Take Profit Multiplier
- Description: Multiplier for ATR to set take profit levels.
- Input: `takeProfitMultiplier`
- Default Value: 2.0
RSI Settings
- RSI Period: Period for the RSI calculation.
- Input: `rsiPeriod`
- Default Value: 14
Dashboard
The script includes a customizable dashboard that displays the following information:
- Portfolio Size
- Maximum Loss Amount
- Entry Price
- Stop Loss Price
- Stop Loss Percentage
- Calculated Leverage
- Order Value
- Order Quantity
- Trend Direction
- Adjusted Maximum Loss Percentage
- Take Profit Price
Dashboard Settings
- Location: Choose the position of the dashboard on the chart.
- Options: 'Top Right', 'Bottom Right', 'Top Left', 'Bottom Left'
- Size: Adjust the size of the dashboard text.
- Options: 'Tiny', 'Small', 'Normal', 'Large'
- Text/Frame Color: Set the color for the text and frame of the dashboard.
Underlying Principles and Assumptions
Leverage Calculation
The leverage calculation is fundamental to risk management in trading. It ensures that the risk per trade does not exceed a specified percentage of the portfolio. This calculation takes into account the potential loss from the entry price to the stop loss level, adjusted for trading fees. By dividing the maximum acceptable loss by the total potential loss (including fees), we derive a leverage that limits the exposure per trade. This approach helps traders avoid over-leveraging, which can lead to significant losses.
ATR and Stop Loss
The Average True Range (ATR) is used to set stop loss levels because it measures market volatility. A higher ATR indicates more volatility, which means wider stop losses are needed to avoid being prematurely stopped out by normal market fluctuations. By using an ATR multiplier, the stop loss is dynamically adjusted based on current market conditions, providing a more robust risk management strategy.
Take Profit Calculation
The take profit level is calculated as a multiple of the ATR, ensuring that it is set at a realistic level relative to market volatility. This method aims to capture significant price movements while avoiding the noise of smaller fluctuations. Setting take profit targets this way helps in locking in profits when the market moves favorably.
RSI for Trend Confirmation
The Relative Strength Index (RSI) is used to confirm the trend direction. An RSI above 50 typically indicates a bullish trend, while an RSI below 50 indicates a bearish trend. By aligning trades with the prevailing trend, the script increases the probability of successful trades. This trend confirmation helps in making informed decisions about leverage and position sizing.
Risk Color Coding
The script uses color coding to visually indicate the risk level and trend direction. Green indicates a favorable condition for long trades, red for short trades, and gray for neutral conditions. This intuitive color coding aids in quickly assessing the market conditions and making timely trading decisions.
Conclusion
This script aims to provide a comprehensive risk management tool for traders. By integrating portfolio size, leverage, fees, ATR, and RSI, it helps in making informed trading decisions. We hope you find this tool useful in your trading journey.
Happy Trading!
Sessions [UkutaLabs]█ OVERVIEW
Sessions is a trading toolkit that displays the different trading sessions on your chart during a trading day. By default, Sessions displays the four standard trading sessions; New York, Tokyo, London, and Sydney.
Each of the four sessions can be toggled, and the Sessions indicator is completely customizable, allowing users to define their own sessions to be generated by the script.
The aim of this script is to improve the trading experience of users by automatically displaying information about each default or custom session to the user.
█ USAGE
This script will automatically detect and label different market sessions. By default, the script will identify the four standard trading sessions, but each of these can be toggled off in the settings.
However, users are not limited to these four trading sessions and have the ability to define their own sessions to be identified by the script. When a session begins, the script will automatically start outlining the market data of that session, including the high and low of the period that is represented by the session.
If the market is within two or more sessions at the same time, then each session will be treated individually and will overlap with each other.
The sessions will be identified as a colored box surrounding the market data of the period that it represents, and a label will be displayed above the box to identify the session that it represents. The label, color and period of each session is completely customizable.
The user can also adjust all sessions at once to account for timezones in the settings.
█ SETTINGS
Session 1
• Session 1: Determines whether or not this session will be drawn by the script.
• A string field to determine the name of the session that will be displayed above the session range.
• Two time fields representing the start and finish of the session.
• A color field to determine the color of the range and label.
Session 2
• Session 2: Determines whether or not this session will be drawn by the script.
• A string field to determine the name of the session that will be displayed above the session range.
• Two time fields representing the start and finish of the session.
• A color field to determine the color of the range and label.
Session 3
• Session 3: Determines whether or not this session will be drawn by the script.
• A string field to determine the name of the session that will be displayed above the session range.
• Two time fields representing the start and finish of the session.
• A color field to determine the color of the range and label.
Session 4
• Session 4: Determines whether or not this session will be drawn by the script.
• A string field to determine the name of the session that will be displayed above the session range.
• Two time fields representing the start and finish of the session.
• A color field to determine the color of the range and label.
Time Zones
• UTC +/-: Determines the offset of each session. Enter - before the number to represent a negative offset.
Daniels Script v2 EMA 4h y DTitle:
"EMA 200 Dynamic Projection on 4H and Daily Charts"
Description:
"This script is designed to provide traders with a comprehensive view of market trends by displaying the 200-period Exponential Moving Average (EMA) on both 4-hour and daily charts simultaneously. Unlike typical EMA representations, this script enhances user decision-making by projecting the potential future path of these EMAs using a dynamic slope calculation.
The dynamic projection feature calculates the slope based on recent changes in the EMA, allowing traders to visualize potential future trends more accurately. This innovative approach helps in identifying potential areas of support and resistance before they are fully formed, offering traders a strategic advantage in planning their entries and exits.
Key Features:
Dual Time Frame Analysis: View 200-period EMAs for both 4-hour and daily charts on a single graph.
Dynamic EMA Projections: Projected using a calculated slope from recent EMA changes, presented as dotted lines for clear distinction.
Enhanced Trend Visualization: Helps in recognizing trend continuations or reversals early, aiding in risk management and decision-making processes.
Usage:
Simply add the script to your chart, and the EMAs along with their projections will automatically be displayed. The 4-hour EMA is shown in green, while the daily EMA is in red. Projections extend from the last known data point, providing a visual guide to potential future movements.
This script is unique in its approach to combining real-time EMA analysis with predictive modeling, making it a valuable tool for traders looking to enhance their technical analysis capabilities."
## SPANISH
Título del Script:
"Proyección Dinámica de la EMA 200 en Gráficos de 4H y Diarios"
Descripción del Script:
"Este script está diseñado para proporcionar a los traders una visión integral de las tendencias del mercado al mostrar la Media Móvil Exponencial (EMA) de 200 periodos tanto en los gráficos de 4 horas como diarios simultáneamente. A diferencia de las representaciones típicas de la EMA, este script mejora la toma de decisiones del usuario al proyectar el posible camino futuro de estas EMAs utilizando un cálculo de pendiente dinámico.
La función de proyección dinámica calcula la pendiente basada en cambios recientes en la EMA, permitiendo a los traders visualizar tendencias futuras potenciales con mayor precisión. Este enfoque innovador ayuda a identificar áreas potenciales de soporte y resistencia antes de que se formen completamente, ofreciendo a los traders una ventaja estratégica en la planificación de sus entradas y salidas.
Características Clave:
Análisis de Doble Marco Temporal: Visualiza las EMAs de 200 periodos para los gráficos de 4 horas y diarios en un solo gráfico.
Proyecciones Dinámicas de la EMA: Proyectadas utilizando una pendiente calculada a partir de cambios recientes en la EMA, presentadas como líneas punteadas para una clara distinción.
Visualización Mejorada de Tendencias: Ayuda en el reconocimiento temprano de continuaciones o reversos de tendencias, asistiendo en la gestión de riesgos y en los procesos de toma de decisiones.
Uso:
Simplemente añade el script a tu gráfico, y las EMAs junto con sus proyecciones se mostrarán automáticamente. La EMA de 4 horas se muestra en verde, mientras que la EMA diaria está en rojo. Las proyecciones se extienden desde el último punto de datos conocido, proporcionando una guía visual hacia movimientos futuros potenciales.
Este script es único en su enfoque de combinar análisis de EMA en tiempo real con modelado predictivo, convirtiéndolo en una herramienta valiosa para traders que buscan mejorar sus capacidades de análisis técnico."
Ichimoku Slope Filtered Signals [UAlgo]
🔶Description:
The "Ichimoku Slope Filtered Signals" indicator is designed to provide trading signals based on the Ichimoku Cloud indicator while incorporating a slope filter. The Ichimoku Cloud is a comprehensive indicator that defines support and resistance, identifies trend direction, and provides trading signals. This script enhances the traditional Ichimoku Cloud signals by incorporating a slope filter, which helps to confirm the strength and direction of the trend.
🔶Key Features:
Ichimoku Cloud Parameters: Users can customize parameters such as Tenkan, Kijun, and Senkou Span lengths, along with multipliers, to adjust the sensitivity of the Ichimoku Cloud.
Slope Filter Settings: Users can specify the number of bars to measure the slope and the lookback period for trend measurement. Additionally, there are options to filter Ichimoku signals based on slope thresholds.
Normalized Slope: The indicator calculates the normalized slope of the selected data series (in this case, Tenkan-sen) and plots it alongside the Ichimoku Cloud.
Signal Generation: Trading signals are generated based on crossovers and crossunders of the Tenkan-sen and Kijun-sen lines of the Ichimoku Cloud. These signals can be further filtered based on the normalized slope of the selected data series.
🔶 Usage:
Customization: Traders can customize the parameters of the Ichimoku Cloud and slope filter according to their trading strategy and risk tolerance.
Interpretation of Signals:
Crossover: A buy signal is generated when the Tenkan-sen line crosses above the Kijun-sen line. This signal can be further filtered based on the normalized slope.
Crossunder: A sell signal is generated when the Tenkan-sen line crosses below the Kijun-sen line. Similar to the buy signal, this can also be filtered based on the normalized slope.
Trend Confirmation: The normalized slope provides additional confirmation of the strength and direction of the trend. A positive slope indicates an upward trend, while a negative slope indicates a downward trend.
Example:
Disclaimer:
Not Financial Advice: This script is provided for educational purposes only and should not be considered financial advice. Traders should conduct their own research and/or consult with a qualified financial advisor before making any investment decisions based on this script.
Risk of Loss: Trading in financial markets involves risk of loss, and past performance is not indicative of future results. Users of this script should be aware of the risks involved in trading and should only trade with capital they can afford to lose.
No Guarantees: There is no guarantee of success or profitability when using this script. Market conditions can change rapidly, and trading results may vary.
Use at Own Risk: The author of this script (UAlgo) does not assume any responsibility for losses incurred as a result of using this script. Traders use this script at their own risk and discretion.
Terms of Use: This script is subject to the terms of the Mozilla Public License 2.0. Users are encouraged to review the license terms before using or distributing the script.
[ChasinAlts]Top-Wicked Good S/R LinesHello Tradeurs, as per usual, I hope everyone is having a FAN-FRIGGIN-TASTIC day. With the soon incoming bull market approaching fast(Nov 7, 2022), there are a few ideas that I've really been trying to push out to help nail a few coins as they are near their bottom peak of this closing Bear Market. This one may seem very similar to the last one I posted but I think this one takes the cake...esp when you see the next script from my 'Market Overview' series that I will be publishing shortly after this one as it is utilizing this new script for a market scanner that will be SUPER legit and profitable. Though it is alway nice to be noticed, I'm glad that I'm relatively unpopular so the few people that are now following me can have some time to make some money with some of these scripts I'm trying to pump out for the benefit of the community. I will rarely give my full analysis of how I take in and utilize these scripts but I can tell you, QUITE A FEW of them are money in the bank. Esp these last few I've done/am doing and even more-so the ones that are soon to come (I'm speaking of about the next 3-4 that I will be attempting to pump out in this next VERY IMPORTANT week.). One more thing I'll add before going to the script is a little alpha(Im pretty certain this is the way it is going but NOTHING is EVERY 100% in life). What I believe should be realized is the bottoming out of MANY of the crypto coins at the VERY bottom of a LONG TERM Cup and Handle (so it seems but shat can still change in the blink of an eye). Thus there are quite a few coins that I believe have already bottomed and wont be returning to said bottom for a few years or so but there are also quite a few still at the brink of the bottomest part before the real market breakout occurs. My goal with these scripts coming out this week to help you all find those coins that have yet to hit their very bottom (thus the ATH/ATL script recently published). Going back in history looking for the lowest points of long term Cup & Handles I will point out 2 key things. Near the center/bottomest part of these historical CnH you will see either Double Bottoms OR a Huge dump and then its V-shaped recovery. After these print the point of no return has occurred where only a few coins will be going lower than these Double Bottoms/V-Shaped recoveries. So the time is at hand. Now that many coins are seemingly pumping after this long consolidation, I believe we need to keep a keen eye out for THE FINAL RUG PULL (as soon as enough degenerates are leveraging Long their entire savings.). What Im saying is be ready for this final rug pull to finally be seeing these Double Bottoms/V-Shaped recoveries VERY soon. DO NOT waste all your capital yet and MAKE SURE to use stop losses or else rather than stop losses you will be burdened with MUCH WORSE losses. Im currently not even in the market bc I am waiting on said rug pull. Ok for the Script now.
This script is similar to the last one but with the previous one, one general set of settings can produce VASTLY different results (might have 2 S/R lines on one coin and 80 on another). I wanted to fix that with this script, turn it into a "Market Overview" Scanner and create alerts for the MO Scanner to be able to get alerted any time a coin is passing its largest wick S/R levels bc DULY NOTE...it is VERY rare that a coin will blow past it if it hasn't approached it recently. That means that a small retrace of 3-5%(or more) is EASY to acquire (with leverage that can really add up with how many coins are in the Kucoin Margin Coin list that I have in my scanners). Now, once price does shoot through a level you best be sure to be looking down the line for a retest of the S/R level it blew past before as they are MANY times the retest level and price will be coming back to it before continuing
in the direction it was going. Depending on the TF your using this could be a few hours to a few days to a few weeks...you get it. With this script you can choose to draw S/R lines 2 ways: 1) by having it plot S/R lines on the end of the largest 2(3,4,5..however many you choose) wicks that the chart has access to. For the scanner ill just be putting the largest 2-3 wicks and set alerts when coming up to them/crossing them & 2) having it draw S/R lines on the ends of the largest X% of wicks. it will be erasing the lines and drawing new ones on each new candle occurrence so the same general settings will no longer be producing VASTLY diff amounts of S/R lines and will be way more consistent amongst the coins for better utilization with the scanner (when I publish it). There is also a Wick Max Cutoff % so for those coins that had it's first few hours printing 100% sized wicks...you can choose to ignore them so they are not taking up one of your top spots for the S/R lines. There is similarly a Wick % min Size that can be selected so if you’re using the top % setting, it will help decrease those coins that can be still plotting 30 lines even though the top 3% of the largest wicks are set in the settings. Hope Im being clear but it's easy enough. I believe in you and your capabilities of comprehending it all and getting it all figured out. So this script is for a visualization for the scanner that I will be uploading soon-after. It's always nice to get a few comments if my ideas/scripts have been helpful to you and please don't hold back if you have something to tell me that I screwed up on (I am still rather new to this coding thing but I like to think I at least have some fresh ideas that aren’t out there in the public library). Talk to you soon and may the force be with your trades. Peace and love people...peace and love. -ChasinAlts out.
Candlestick Pattern Criteria and Analysis Indicator█ OVERVIEW
Define, then locate the presence of a candle that fits a specific criteria. Run a basic calculation on what happens after such a candle occurs.
Here, I’m not giving you an edge, but I’m giving you a clear way to find one.
IMPORTANT NOTE: PLEASE READ:
THE INDICATOR WILL ALWAYS INITIALLY LOAD WITH A RUNTIME ERROR. WHEN INITIALLY LOADED THERE NO CRITERIA SELECTED.
If you do not select a criteria or run a search for a criteria that doesn’t exist, you will get a runtime error. If you want to force the chart to load anyway, enable the debug panel at the bottom of the settings menu.
Who this is for:
- People who want to engage in TradingView for tedious and challenging data analysis related to candlestick measurement and occurrence rate and signal bar relationships with subsequent bars. People who don’t know but want to figure out what a strong bullish bar or a strong bearish bar is.
Who this is not for:
- People who want to be told by an indicator what is good or bad or buy or sell. Also, not for people that don’t have any clear idea on what they think is a strong bullish bar or a strong bearish bar and aren’t willing to put in the work.
Recommendation: Use on the candle resolution that accurately reflects your typical holding period. If you typically hold a trade for 3 weeks, use 3W candles. If you hold a trade for 3 minutes, use 3m candles.
Tldr; Read the tool tips and everything above this line. Let me know any issues that arise or questions you have.
█ CONCEPTS
Many trading styles indicate that a certain candle construct implies a bearish or bullish future for price. That said, it is also common to add to that idea that the context matters. Of course, this is how you end up with all manner of candlestick patterns accounting for thousands of pages of literature. No matter the context though, we can distill a discretionary trader's decision to take a trade based on one very basic premise: “A trader decides to take a trade on the basis of the rightmost candle's construction and what he/she believes that candle construct implies about the future price.” This indicator vets that trader’s theory in the most basic way possible. It finds the instances of any candle construction and takes a look at what happens on the next bar. This current bar is our “Signal Bar.”
█ GUIDE
I said that we vet the theory in the most basic way possible. But, in truth, this indicator is very complex as a result of there being thousands of ways to define a ‘strong’ candle. And you get to define things on a very granular level with this indicator.
Features:
1. Candle Highlighting
When the user’s criteria is met, the candle is highlighted on the chart.
The following candle is highlighted based on whether it breaks out, breaks down, or is an inside bar.
2. User-Defined Criteria
Criteria that you define include:
Candle Type: Bull bars, Bear bars, or both
Candle Attributes
Average Size based on Standard Deviation or Average of all potential bars in price history
Search within a specific price range
Search within a specific time range
Clarify time range using defined sessions and with or without weekends
3. Strike Lines on Candle
Often you want to know how price reacts when it gets back to a certain candle. Also it might be true that candle types cluster in a price region. This can be identified visually by adding lines that extend right on candles that fit the criteria.
4. User-Defined Context
Labeled “Alternative Criteria,” this facet of the script allows the user to take the context provided from another indicator and import it into the indicator to use as a overriding criteria. To account for the fact that the external indicator must be imported as a float value, true (criteria of external indicator is met) must be imported as 1 and false (criteria of external indicator is not met) as 0. Basically a binary Boolean. This can be used to create context, such as in the case of a traditional fractal, or can be used to pair with other signals.
If you know how to code in Pinescript, you can save a copy and simply add your own code to the section indicated in the code and set your bull and bear variables accordingly and the code should compile just fine with no further editing needed.
Included with the script to maximize out-of-the-box functionality, there is preloaded as alternative criteria a code snippet. The criteria is met on the bull side when the current candle close breaks out above the prior candle high. The bear criteria is met when the close breaks below the prior candle. When Alternate Criteria is run by itself, this is the only criteria set and bars are highlighted when it is true. You can qualify these candles by adding additional attributes that you think would fit well.
Using Alternative Criteria, you are essentially setting a filter for the rest of the criteria.
5. Extensive Read Out in the Data Window (right side bar pop out window).
As you can see in the thumbnail, there is pasted a copy of the Data Window Dialogue. I am doubtful I can get the thumbnail to load up perfectly aligned. Its hard to get all these data points in here. It may be better suited for a table at this point. Let me know what you think.
The primary, but not exclusive, purpose of what is in the Data Window is to talk about how often your criteria happens and what happens on the next bar. There are a lot of pieces to this.
Red = Values pertaining to the size of the current bar only
Blue = Values pertaining or related to the total number of signals
Green = Values pertaining to the signal bars themselves, including their measurements
Purple = Values pertaining to bullish bars that happen after the signal bar
Fuchsia = Values pertaining to bearish bars that happen after the signal bar
Lime = Last four rows which are your percentage occurrence vs total signals percentages
The best way I can explain how to understand parts you don’t understand otherwise in the data window is search the title of the row in the code using ‘ctrl+f’ and look at it and see if it makes more sense.
█ [b}Available Candle Attributes
Candle attributes can be used in any combination. They include:
[*}Bodies
[*}High/Low Range
[*}Upper Wick
[*}Lower Wick
[*}Average Size
[*}Alternative Criteria
Criteria will evaluate each attribute independently. If none is set for a particular attribute it is bypassed.
Criteria Quantity can be in Ticks, Points, or Percentage. For percentage keep in mind if using anything involving the candle range will not work well with percentage.
Criteria Operators are “Greater Than,” “Less Than,” and “Threshold.” Threshold means within a range of two numbers.
█ Problems with this methodology and opportunities for future development:
#1 This kind of work is hard.
If you know what you’re doing you might be able to find success changing out the inputs for loops and logging results in arrays or matrices, but to manually go through and test various criteria is a lot of work. However, it is rewarding. At the time of publication in early Oct 2022, you will quickly find that you get MUCH more follow through on bear bars than bull bars. That should be obvious because we’re in the middle of a bear market, but you can still work with the parameters and contextual inputs to determine what maximizes your probability. I’ve found configurations that yield 70% probability across the full series of bars. That’s an edge. That means that 70% of the time, when this criteria is met, the next bar puts you in profit.
#2 The script is VERY heavy.
Takes an eternity to load. But, give it a break, it’s doing a heck of a lot! There is 10 unique arrays in here and a loop that is a bit heavy but gives us the debug window.
#3 If you don’t have a clear idea its hard to know where to start.
There are a lot of levers to pull on in this script. Knowing which ones are useful and meaningful is very challenging. Combine that with long load times… its not great.
#4 Your brain is the only thing that can optimize your results because the criteria come from your mind.
Machine learning would be much more useful here, but for now, you are the machine. Learn.
#5 You can’t save your settings.
So, when you find a good combo, you’ll have to write it down elsewhere for future reference. It would be nice if we could save templates on custom indicators like we can on some of the built in drawing tools, but I’ve had no success in that. So, I recommend screenshotting your settings and saving them in Notion.so or some other solid record keeping database. Then you can go back and retrieve those settings.
#6 no way to export these results into conditions that can be copy/pasted into another script.
Copy/Paste of labels or tables would be the best feature ever at this point. Because you could take the criteria and put it in a label, copy it and drop it into another strategy script or something. But… men can dream.
█ Opportunities to PineCoders Learn:
1. In this script I’m importing libraries, showing some of my libraries functionality. Hopefully that gives you some ideas on how to use them too.
The price displacement library (which I love!)
Creative and conventional ways of using debug()
how to display arrays and matrices on charts
I didn’t call in the library that holds the backtesting function. But, also demonstrating, you can always pull the library up and just copy/paste the function out of there and into your script. That’s fine to do a lot of the time.
2. I am using REALLY complicated logic in this script (at least for me). I included extensive descriptions of this ? : logic in the text of the script. I also did my best to bracket () my logic groups to demonstrate how they fit together, both for you and my future self.
3. The breakout, built-in, “alternative criteria” is actually a small bit of genius built in there if you want to take the time to understand that block of code and think about some of the larger implications of the method deployed.
As always, a big thank you to TradingView and the Pinescript community, the Pinescript pros who have mentored me, and all of you who I am privileged to help in their Pinescripting journey.
"Those who stay will become champions" - Bo Schembechler